package com.xuqm.sdhbwfu.app.model


import com.google.gson.annotations.SerializedName

data class InspectionListModel(
    @SerializedName("alarm")
    val alarm: Any,
    @SerializedName("claimCode")
    val claimCode: Any,
    @SerializedName("claimName")
    val claimName: Any,
    @SerializedName("createTime")
    val createTime: String,
    @SerializedName("earlyWarning")
    val earlyWarning: Any,
    @SerializedName("endTaskTime")
    val endTaskTime: String,
    @SerializedName("finishTaskTime")
    val finishTaskTime: String,
    @SerializedName("getTaskTime")
    val getTaskTime: Any,
    @SerializedName("id")
    val id: Int,
    @SerializedName("inspectionTaskProject")
    val inspectionTaskProject: List<InspectionTaskProject>,
    @SerializedName("inspectionType")
    val inspectionType: String,
    @SerializedName("isOverTime")
    val isOverTime: Boolean,
    @SerializedName("name")
    val name: String,
    @SerializedName("normal")
    val normal: Any,
    @SerializedName("note")
    val note: Any,
    @SerializedName("startTaskTime")
    val startTaskTime: String,
    @SerializedName("status")
    val status: String,
    @SerializedName("type")
    val type: String,
    @SerializedName("uninspected")
    val uninspected: Any,
    @SerializedName("updateTime")
    val updateTime: String,
    @SerializedName("usercode")
    val usercode: String,
    @SerializedName("username")
    val username: String
) {
    data class InspectionTaskProject(
        @SerializedName("alarm")
        val alarm: Any,
        @SerializedName("attachment")
        val attachment: List<Any>,
        @SerializedName("concreteCode")
        val concreteCode: String,
        @SerializedName("concreteName")
        val concreteName: String,
        @SerializedName("id")
        val id: Int,
        @SerializedName("inspectionTask")
        val inspectionTask: Any,
        @SerializedName("itemValue")
        val itemValue: List<ItemValue>,
        @SerializedName("locationCode")
        val locationCode: String,
        @SerializedName("locationName")
        val locationName: String,
        @SerializedName("name")
        val name: String,
        @SerializedName("normal")
        val normal: Any,
        @SerializedName("projectId")
        val projectId: Int,
        @SerializedName("projectType")
        val projectType: String,
        @SerializedName("rfid")
        val rfid: String,
        @SerializedName("sort")
        val sort: Int,
        @SerializedName("status")
        val status: Any,
        @SerializedName("tip")
        val tip: Any,
        @SerializedName("uninspected")
        val uninspected: Any,
        @SerializedName("upload")
        val upload: Boolean,
        @SerializedName("usercode")
        val usercode: Any,
        @SerializedName("username")
        val username: Any
    ) {
        data class ItemValue(
            @SerializedName("id")
            val id: Int,
            @SerializedName("name")
            val name: String,
            @SerializedName("ruleItem")
            val ruleItem: RuleItem,
            @SerializedName("sort")
            val sort: Int,
            @SerializedName("status")
            val status: String,
            @SerializedName("unit")
            val unit: String,
            @SerializedName("value")
            val value: Any,
            @SerializedName("valueType")
            val valueType: String
        ) {
            data class RuleItem(
                @SerializedName("alarm")
                val alarm: String,
                @SerializedName("alarmDown")
                val alarmDown: Double,
                @SerializedName("alarmUpper")
                val alarmUpper: Double,
                @SerializedName("id")
                val id: Int,
                @SerializedName("metricCode")
                val metricCode: String,
                @SerializedName("metricName")
                val metricName: Any,
                @SerializedName("name")
                val name: String,
                @SerializedName("sort")
                val sort: Int,
                @SerializedName("thresholdType")
                val thresholdType: String,
                @SerializedName("type")
                val type: String,
                @SerializedName("unit")
                val unit: String,
                @SerializedName("valueType")
                val valueType: String
            )
        }
    }
}